﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Kevin.Controls
{
    //席吉波

    /// <summary>
    /// 表格的客户端状态
    /// </summary>
    internal class GridClientState
    {
        /// <summary>
        /// 表格查询参数的客户端状态列表
        /// </summary>
        public IList<GridQueryParameter> GridQueryParameterList
        {
            get;
            set;
        }

        /// <summary>
        /// 表格的客户端状态数据列表
        /// </summary>

        public DataFieldCollection DataFieldList
        {
            get;
            set;
        }

        /// <summary>
        /// 命令操作的客户端状态
        /// </summary>
        public IList<GridQueryParameter> EditCommandFieldStates
        {
            get;
            set;
        }

        public DataFieldCollection SelectedDataFieldList
        {
            get;
            set;
        }
    }

    #region 表格查询参数的客户端状态

    /// <summary>
    /// 表格查询参数的客户端状态
    /// </summary>
    internal class GridQueryParameter
    {
        public GridQueryParameter()
        { }
        /// <summary>
        /// 表格查询参数的客户端状态 
        /// </summary>
        /// <param name="propertyName">对应的属性名称</param>
        /// <param name="getClientControlDataMethod">客户端控件取值/赋值方法</param>
        public GridQueryParameter(string propertyName, string getClientControlDataMethod)
            : this(string.Empty, propertyName, getClientControlDataMethod)
        {

        }
        /// <summary>
        /// 表格查询参数的客户端状态
        /// </summary>
        /// <param name="clientID">控件的客户端ID</param>
        /// <param name="propertyName">对应的属性名称</param>
        /// <param name="getClientControlDataMethod">客户端控件取值/赋值方法</param>
        public GridQueryParameter(string clientID, string propertyName, string getClientControlDataMethod)
        {
            //将服务器端控件转换为客户端控件
            this.ClientID = clientID;
            this.Name = propertyName;
            this.Method = getClientControlDataMethod;
        }
        /// <summary>
        /// 控件的客户端ID
        /// </summary>
        public string ClientID
        {
            get;
            set;
        }
        /// <summary>
        /// 对应的属性名称
        /// </summary>
        public string Name
        {
            get;
            set;
        }
        /// <summary>
        /// 客户端控件取值/赋值方法
        /// </summary>
        public string Method
        {
            get;
            set;
        }

    }
    #endregion

    #region 表格的客户端状态数据

    /// <summary>
    /// 表格的客户端状态数据
    /// </summary>


    #endregion

}
